package com.ruoyi.fina.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 财务汇总对象 fin_summary
 * 
 * @author useragent-1
 * @date 2025-05-26
 */
public class FinSummary extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 汇总ID */
    private Long summaryId;

    /** 用户ID（关联sys_user表） */
    @Excel(name = "用户ID", readConverterExp = "关=联sys_user表")
    private Long userId;

    /** 汇总月份 */
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @Excel(name = "汇总月份", width = 30, dateFormat = "yyyy-MM-dd")
    private Date month;

    /** 总收入 */
    @Excel(name = "总收入")
    private BigDecimal totalIncome;

    /** 总支出 */
    @Excel(name = "总支出")
    private BigDecimal totalExpense;

    /** 净收入 */
    @Excel(name = "净收入")
    private BigDecimal netIncome;

    public void setSummaryId(Long summaryId) 
    {
        this.summaryId = summaryId;
    }

    public Long getSummaryId() 
    {
        return summaryId;
    }

    public void setUserId(Long userId) 
    {
        this.userId = userId;
    }

    public Long getUserId() 
    {
        return userId;
    }

    public void setMonth(Date month) 
    {
        this.month = month;
    }

    public Date getMonth() 
    {
        return month;
    }

    public void setTotalIncome(BigDecimal totalIncome) 
    {
        this.totalIncome = totalIncome;
    }

    public BigDecimal getTotalIncome() 
    {
        return totalIncome;
    }

    public void setTotalExpense(BigDecimal totalExpense) 
    {
        this.totalExpense = totalExpense;
    }

    public BigDecimal getTotalExpense() 
    {
        return totalExpense;
    }

    public void setNetIncome(BigDecimal netIncome) 
    {
        this.netIncome = netIncome;
    }

    public BigDecimal getNetIncome() 
    {
        return netIncome;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("summaryId", getSummaryId())
            .append("userId", getUserId())
            .append("month", getMonth())
            .append("totalIncome", getTotalIncome())
            .append("totalExpense", getTotalExpense())
            .append("netIncome", getNetIncome())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
